package com.example.demo.controller;

import java.util.List;

public class TeamDashboardVO {
    private Long teamId;
    private String teamName;
    private Double teamScore;
    private Integer teamRanking;
    private Integer totalMembers;
    private Integer completedAssignments;
    private List<ContributionItem> contributions;
    private ProgressInfo teamProgress;

    // getter和setter方法
    public Long getTeamId() { return teamId; }
    public void setTeamId(Long teamId) { this.teamId = teamId; }

    public String getTeamName() { return teamName; }
    public void setTeamName(String teamName) { this.teamName = teamName; }

    public Double getTeamScore() { return teamScore; }
    public void setTeamScore(Double teamScore) { this.teamScore = teamScore; }

    public Integer getTeamRanking() { return teamRanking; }
    public void setTeamRanking(Integer teamRanking) { this.teamRanking = teamRanking; }

    public Integer getTotalMembers() { return totalMembers; }
    public void setTotalMembers(Integer totalMembers) { this.totalMembers = totalMembers; }

    public Integer getCompletedAssignments() { return completedAssignments; }
    public void setCompletedAssignments(Integer completedAssignments) { this.completedAssignments = completedAssignments; }

    public List<ContributionItem> getContributions() { return contributions; }
    public void setContributions(List<ContributionItem> contributions) { this.contributions = contributions; }

    public ProgressInfo getTeamProgress() { return teamProgress; }
    public void setTeamProgress(ProgressInfo teamProgress) { this.teamProgress = teamProgress; }

    // ContributionItem 内部类
    public static class ContributionItem {
        private Long studentId;
        private String studentName;
        private String role;
        private Double contributionRate;
        private Integer completedTasks;
        private Double personalScore;  // 新增字段

        // getter和setter方法
        public Long getStudentId() { return studentId; }
        public void setStudentId(Long studentId) { this.studentId = studentId; }

        public String getStudentName() { return studentName; }
        public void setStudentName(String studentName) { this.studentName = studentName; }

        public String getRole() { return role; }
        public void setRole(String role) { this.role = role; }

        public Double getContributionRate() { return contributionRate; }
        public void setContributionRate(Double contributionRate) { this.contributionRate = contributionRate; }

        public Integer getCompletedTasks() { return completedTasks; }
        public void setCompletedTasks(Integer completedTasks) { this.completedTasks = completedTasks; }

        // 新增的getter和setter方法
        public Double getPersonalScore() { return personalScore; }
        public void setPersonalScore(Double personalScore) { this.personalScore = personalScore; }
    }

    // ProgressInfo 内部类
    public static class ProgressInfo {
        private Integer totalAssignments;
        private Integer completedAssignments;
        private Double completionRate;

        // getter和setter方法
        public Integer getTotalAssignments() { return totalAssignments; }
        public void setTotalAssignments(Integer totalAssignments) { this.totalAssignments = totalAssignments; }

        public Integer getCompletedAssignments() { return completedAssignments; }
        public void setCompletedAssignments(Integer completedAssignments) { this.completedAssignments = completedAssignments; }

        public Double getCompletionRate() { return completionRate; }
        public void setCompletionRate(Double completionRate) { this.completionRate = completionRate; }
    }
}